package com.central.post.pojo.newGood

import com.baomidou.mybatisplus.extension.plugins.pagination.Page
import com.central.common.model.CommentVo
import com.fasterxml.jackson.annotation.JsonFormat
import io.swagger.annotations.ApiModel
import io.swagger.annotations.ApiModelProperty
import io.swagger.annotations.ApiOperation
import org.springframework.format.annotation.DateTimeFormat
import java.util.*


@ApiModel("上新模块dto")
data class NewGoodDto(

    @ApiModelProperty("上新名称")
    var goodName: String? = null,

    @ApiModelProperty("上新品牌")
    var goodBrand: String? = null,

    @ApiModelProperty("发售时间")
    var goodTime: String? = null,

    @ApiModelProperty("上新图片")
    var goodPics: String? = null,

    @ApiModelProperty("上新价格")
    var goodPrice: String? = null,

    @ApiModelProperty("上新链接")
    var goodUrl: String? = null,

    @ApiModelProperty("上新类型")
    var goodType: Int? = null,
)

data class NewGoodSearchDto(


    @ApiModelProperty("上新类型 0: 全部 1: JK 2: Lolita 3: 汉服")
    var goodType: Int? = null,

    @ApiModelProperty("年")
    var year: Int? = null,

    @ApiModelProperty("月")
    var month: Int? = null

)

data class NewGoodListVo(

    @ApiModelProperty("id")
    var id: Long? = null,

    @ApiModelProperty("上新名称")
    var goodName: String? = null,

    @ApiModelProperty("上新品牌")
    var goodBrand: String? = null,

    @ApiModelProperty("上新图片")
    var goodPicList: List<String>? = null,

    @ApiModelProperty("点赞数")
    var likeNum: Long? = null,

    @ApiModelProperty("评论数")
    var commentNum: Long? = null
)

@ApiOperation("上新商品列表")
data class NewGoodList(

    @ApiModelProperty("创建时间")
    var time: String? = null,

    @ApiModelProperty("上新商品列表")
    var newGoodListVos: List<NewGoodListVo>? = null
)

data class NewGoodDetailVo(

    @ApiModelProperty("id")
    var id: Long? = null,

    @ApiModelProperty("上新名称")
    var goodName: String? = null,

    @ApiModelProperty("上新品牌")
    var goodBrand: String? = null,

    @ApiModelProperty("上新图片")
    var goodPicList: List<String>? = null,

    @ApiModelProperty("发售时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM")
    @DateTimeFormat(pattern = "yyyy-MM")
    var goodTime: Date? = null,

    @ApiModelProperty("是否关注")
    var booleanLike: Boolean? = false,

    @ApiModelProperty("是否订阅")
    var booleanSubscribe: Boolean? = false,

    @ApiModelProperty("评论信息")
    var commentInfo: Page<CommentVo>? = null
)
